Docker镜像jdk制作打包(各tag版本说明) |
您所在的位置:网站首页 › jdk18特性 stream › Docker镜像jdk制作打包(各tag版本说明) |
持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第18天,点击查看活动详情 1.写在前面很多时候,我们的服务,要使用云原生部署,那就少不了与docker镜像打交道。 一般来说,我们的springboot项目,打成docker镜像包,也是很方便了。一个Dockerfile文件就搞定的事。 那我们的springboot项目,运行需要jdk环境,那我们的基础镜像,就应该是一个有jdk环境的docker镜像。 所以我们今天来讲讲,如何制作一个jdk基础docker镜像包。 当然,我们也可以上docker hub仓库,直接拉别人制作好的镜像包。 例如这些:docker hub地址 执行pull命令: pull成功的结果如下: 这里,要注意hub仓库上面的226.01MB,但最终的size是526MB 这是因为hub仓库会经过压缩处理,最终的大小以pull下来的size为准。 2.jdk的tag说明官方地址 openjdk:8u201-jre-alpine3.9(表示jre环境) openjdk:8u201-jdk-alpine3.9(表示jdk环境) alpine关键字 以openjdk:8u201-jre-alpine3.9这个tag为例,表明镜像的操作系统是alpine linux,alpine镜像的大小是5M左右,因此以alpine作为基础镜像构建出的openjdk镜像也很小。官方地址 openjdk:8u312-slim slim关键字以openjdk:8u312-slim这个tag为例,表明当前的jre并非标准jre版本,而是headless版本,该版本的特点是去掉了UI、键盘、鼠标相关的库,因此更加精简,适合服务端应用使用,官方的建议是除非有明确的体积限制是再考虑使用该版本。 官方地址 openjdk:18-ea-jdk ea关键字以openjdk:18-ea-jdk这个tag为例,ea的意思是Early Access,这里代表jdk18正是发布之前的预览版本,该版本带有新特性并且修复了若干bug,但毕竟是预览版,质量还未达到release要求,不推荐生产环境使用。 3.制作自己的jdk镜像上面说到,我们可以拉别人制作好的镜像,但今天,咋们还是自己来搞一把。 毕竟自己折腾一下,能加深我们的印象,也能提高我们的技能,我们,也能自己制作镜像。 3.1 Dockerfile FROM centos:centos7 ADD jdk-8u201-linux-x64.tar.gz /opt/soft/ ENV JAVA_HOME /opt/soft/jdk1.8.0_201 ENV CLASSPATH .:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar ENV PATH $JAVA_HOME/bin:$HOME/bin:$HOME/.local/bin:$PATH CMD ["java","-version"] 复制代码基础镜像,我们选择centos7 官方地址 centos:centos7 jdk-8u201-linux-x64.tar.gz是我们在jdk官网下载的jdk包官方下载地址 这里要说明一下: x64,i586(适合linux内核是amd的,例如:centos、window) arrch64,arm(适合linux内核是arm的,例如:有些unbntu) 可能说得不是很对,轻点喷!!! 3.2 build.sh 执行命令构建,并push到自己的harbor仓库 docker build -t llsydn:jdk8 -f ./Dockerfile . docker push llsydn:jdk8 docker rmi llsydn:jdk8 复制代码执行 ./build.sh 复制代码好了,以上就是我个人的实操了。 个人理解,可能也不够全面,班门弄斧了。 好了,今天就先到这里了!!!^_^ 如果觉得有收获的,帮忙点赞、评论、收藏一下呗!!! |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |